package com.rybbaby.tss.platform.sysInterfaceDocument.entity;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Table;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Version;

/**
 * @description 接口文档
 * 
 * @author 谢进伟
 * 
 * @createDate 2017-01-13 上午11:14:09
 */
@Entity
@Table(name = "sys_interface_document")
@DynamicUpdate(true)
@DynamicInsert(true)
public class SysInterfaceDocument implements Serializable {
	
	private static final long serialVersionUID = 55734881359825L;
	
	/** 主键 **/
	private String id;
	/** 接口名称 **/
	private String name;
	/** 所属分组 **/
	private String groupId;
	/** 创建时间 **/
	private java.sql.Timestamp createTime;
	/** 创建人Id **/
	private String createUserId;
	/** 请求方式 **/
	private String method;
	/** 最后一次修改人Id **/
	private String lastUpdateUserId;
	/** 封面图 **/
	private String cover;
	/** 备注 **/
	private String remark;
	/** 权重 **/
	private Integer weight;
	/** 接口地址 **/
	private String uri;
	/** 请求举例 **/
	private String requestExample;
	/** 响应举例 **/
	private String responseExample;
	/** 版本 **/
	private Integer version;
	
	/**
	 * 方法: 取得主键
	 *
	 * @return java.lang.String 主键
	 */
	@Id
	@GeneratedValue(generator = "sys_interface_documentIDGenerator" , strategy = GenerationType.AUTO)
	@GenericGenerator(name = "sys_interface_documentIDGenerator" , strategy = "uuid")
	@Column(name = "id" , nullable = false , length = 32)
	public String getId() {
		return this.id;
	}
	
	/**
	 * 方法: 设置主键
	 *
	 * @param id
	 *            主键
	 */
	public void setId(String id) {
		this.id = id;
	}
	
	/**
	 * 方法: 取得接口名称
	 *
	 * @return java.lang.String 接口名称
	 */
	@Column(name = "name" , nullable = true , length = 100)
	public String getName() {
		return this.name;
	}
	
	/**
	 * 方法: 设置接口名称
	 *
	 * @param name
	 *            接口名称
	 */
	public void setName(String name) {
		this.name = name;
	}
	
	/**
	 * 方法: 取得所属分组
	 *
	 * @return java.lang.String 所属分组
	 */
	@Column(name = "groupId" , nullable = true , length = 100)
	public String getGroupId() {
		return groupId;
	}
	
	/**
	 * 方法: 设置所属分组
	 *
	 * @param groupId
	 *            所属分组
	 */
	public void setGroupId(String groupId) {
		this.groupId = groupId;
	}
	
	/**
	 * 方法: 取得创建时间
	 *
	 * @return java.sql.Timestamp 创建时间
	 */
	@Column(name = "createTime" , nullable = true , length = 19)
	public java.sql.Timestamp getCreateTime() {
		return this.createTime;
	}
	
	/**
	 * 方法: 设置创建时间
	 *
	 * @param createTime
	 *            创建时间
	 */
	public void setCreateTime(java.sql.Timestamp createTime) {
		this.createTime = createTime;
	}
	
	/**
	 * 方法: 取得创建人Id
	 *
	 * @return java.lang.String 创建人Id
	 */
	@Column(name = "createUserId" , nullable = true , length = 32)
	public String getCreateUserId() {
		return this.createUserId;
	}
	
	/**
	 * 方法: 设置创建人Id
	 *
	 * @param createUserId
	 *            创建人Id
	 */
	public void setCreateUserId(String createUserId) {
		this.createUserId = createUserId;
	}
	
	/**
	 * 方法: 取得请求方式
	 *
	 * @return java.lang.String 请求方式
	 */
	public String getMethod() {
		return method;
	}
	
	/**
	 * 方法: 设置请求方式
	 *
	 * @param method
	 *            请求方式
	 */
	public void setMethod(String method) {
		this.method = method;
	}
	
	/**
	 * 方法: 取得最后一次修改人Id
	 *
	 * @return java.lang.String 最后一次修改人Id
	 */
	@Column(name = "lastUpdateUserId" , nullable = true , length = 32)
	public String getLastUpdateUserId() {
		return this.lastUpdateUserId;
	}
	
	/**
	 * 方法: 设置最后一次修改人Id
	 *
	 * @param lastUpdateUserId
	 *            最后一次修改人Id
	 */
	public void setLastUpdateUserId(String lastUpdateUserId) {
		this.lastUpdateUserId = lastUpdateUserId;
	}
	
	/**
	 * 方法: 取得封面图
	 *
	 * @return java.lang.String 封面图
	 */
	@Column(name = "cover" , nullable = true , length = 32)
	public String getCover() {
		return this.cover;
	}
	
	/**
	 * 方法: 设置封面图
	 *
	 * @param cover
	 *            封面图
	 */
	public void setCover(String cover) {
		this.cover = cover;
	}
	
	/**
	 * 方法: 取得备注
	 *
	 * @return java.lang.String 备注
	 */
	@Column(name = "remark" , nullable = true , length = 255)
	public String getRemark() {
		return this.remark;
	}
	
	/**
	 * 方法: 设置备注
	 *
	 * @param remark
	 *            备注
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	/**
	 * 方法: 取得权重
	 *
	 * @return java.lang.Integer 权重
	 */
	@Column(name = "weight" , nullable = true , length = 11)
	public Integer getWeight() {
		return this.weight;
	}
	
	/**
	 * 方法: 设置权重
	 *
	 * @param weight
	 *            权重
	 */
	public void setWeight(Integer weight) {
		this.weight = weight;
	}
	
	/**
	 * 方法: 取得接口地址
	 *
	 * @return java.lang.String 接口地址
	 */
	@Column(name = "uri" , nullable = true , length = 500)
	public String getUri() {
		return this.uri;
	}
	
	/**
	 * 方法: 设置接口地址
	 *
	 * @param uri
	 *            接口地址
	 */
	public void setUri(String uri) {
		this.uri = uri;
	}
	
	/**
	 * 方法: 取得请求举例
	 *
	 * @return java.lang.String 请求举例
	 */
	@Column(name = "requestExample" , nullable = true , length = 500)
	public String getRequestExample() {
		return this.requestExample;
	}
	
	/**
	 * 方法: 设置请求举例
	 *
	 * @param requestExample
	 *            请求举例
	 */
	public void setRequestExample(String requestExample) {
		this.requestExample = requestExample;
	}
	
	/**
	 * 方法: 取得响应举例
	 *
	 * @return java.lang.String 响应举例
	 */
	@Column(name = "responseExample" , nullable = true , length = 21845)
	public String getResponseExample() {
		return this.responseExample;
	}
	
	/**
	 * 方法: 设置响应举例
	 *
	 * @param responseExample
	 *            响应举例
	 */
	public void setResponseExample(String responseExample) {
		this.responseExample = responseExample;
	}
	
	/**
	 * 方法: 取得版本
	 *
	 * @return java.lang.Integer 版本
	 */
	@Version
	@Column(name = "version" , nullable = true , length = 11)
	public Integer getVersion() {
		return this.version;
	}
	
	/**
	 * 方法: 设置版本
	 *
	 * @param version
	 *            版本
	 */
	public void setVersion(Integer version) {
		this.version = version;
	}
}